// pages/markerDetailPage/markerDetailPage.js
import {
  request
} from '../../request/index.js';
var app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    selectedMarkerID: '',
    selectedMarkerTitle: '',
    selectedMarkerLocation: '',
    selectedMarkerLayer: '',
    selectedMarkerLongitude: '',
    selectedMarkerLatitude: '',
    // 显示点
    selectedMarker: [],
    // 点的详细信息
    markerDetailInfo: '',
    // 点的图片
    imgUrls: []
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      selectedMarkerID: options.selectedMarkerID,
      selectedMarkerTitle: options.selectedMarkerTitle,
      selectedMarkerLocation: options.selectedMarkerLocation
    })
    // 发起请求获得点的详细信息
    request({
      url: "/marker/detail/" + parseInt(this.data.selectedMarkerID)
    }).then(result => {
      let selectedMarker = []
      selectedMarker.push(result.data.data[0])
      if (result.data.data[0].markerField) {
        this.setData({
          markerDetailInfo: result.data.data[0].markerField
        })
      }
      this.setData({
        selectedMarkerLayer: result.data.data[0].layerInfo[0].layerName,
        selectedMarkerLongitude: result.data.data[0].longitude,
        selectedMarkerLatitude: result.data.data[0].latitude,
        selectedMarker: selectedMarker
      })
    })
    // 发起请求获得点的图片
    request({
      url: '/marker/testDownLoad?markerId=' + parseInt(this.data.selectedMarkerID)
    }).then(result => {
      if (result.data.data) {
        this.setData({
          imgUrls: result.data.data
        })
      }
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
    if (app.globalData.deleteMarkerSuccessFlag == true) {
      // 前端删除数据
      app.globalData.layerGlobal.map((v, i) => {
        if (v.layerName == this.data.selectedMarkerLayer) {
          v.markerList.map((value, index) => {
            if (value.markerName == this.data.selectedMarkerTitle) {
              v.markerList.splice(index, 1)
            }
          })
        }
      })
    }
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },
  deleteMarker: async function (e) {
    // 判断权限
    if (app.globalData.teamUserRight != 2) {
      wx.showModal({
        title: '提示',
        content: '您还没有编辑权限！请联系管理员'
      })
    } else {
      let userChoice = await wx.showModal({
        title: '提示',
        content: '确认要删除该标记点?'
      })
      if (userChoice.confirm) {
        await request({
          url: '/marker/' + this.data.selectedMarkerID,
          method: 'DELETE'
        })
        wx.showToast({
          title: '删除成功！',
          mask: true,
          success: () => {
            // 跳转到首页
            wx.switchTab({
              url: '../mapPage/mapPage',
            })
          }
        })
        app.globalData.deleteMarkerSuccessFlag = true
      } else {

      }
    }
  },
  // 编辑点
  editMarker: function () {
    // 判断权限
    if (app.globalData.teamUserRight != 2) {
      wx.showModal({
        title: '提示',
        content: '您还没有编辑权限！请联系管理员'
      })
    } else {
      wx.navigateTo({
        url: '../markerEditPage/markerEditPage?layerName=' + this.data.selectedMarkerLayer + '&markerName=' + this.data.selectedMarkerTitle + '&location=' + this.data.selectedMarkerLocation + '&markerId=' + this.data.selectedMarkerID
      })
    }
  },
  // 预览图片
  imgYu(e) {
    var src = e.currentTarget.dataset.src; //获取data-src
    var imgList = this.data.imgUrls; //获取data-list
    //图片预览
    wx.previewImage({
      current: src, // 当前显示图片的http链接
      urls: imgList // 需要预览的图片http链接列表
    })
  }
})